

//Array.prototype.slice
//Array.prototype.splice
//Function.prototype.call
//Function.prototype.bind

// function demo(){
//     // console.log(arguments);
//     return Array.prototype.slice.call(arguments);
// }

// function demo(){   //简单写法
//     // console.log(arguments);
//     return [].slice.call(arguments);
// }

// var d = demo(1,1);
// console.log(d);

/**
 * 除了使用 Array.prototype.slice.call(arguments)，你也可以简单的使用 [].slice.call(arguments) 来代替。另外，你可以使用 bind 来简化该过程。
 var unboundSlice = Array.prototype.slice;
var slice = Function.prototype.call.bind(unboundSlice);

function list() {
  return slice(arguments);
}

var list1 = list(1, 2, 3); // [1, 2, 3]
 */

 //写一个类数组通用的转换方法
//  var s = Array.prototype.slice;  //这种封装很有意思
//  var _slice = Function.prototype.call.bind(s)

//  function demo(){
//      return _slice(arguments)
//  }

//  var d = demo(1,1,1)
// console.log(d);



//Array.prototype.splice
//从第 2 位开始删除 0 个元素，插入“drum”
// var myFish = ["angel", "clown", "mandarin", "sturgeon"];
// var newFish = myFish.splice(2,0,'drum');
// console.log(newFish);
// console.log(myFish);

// 从第 3 位开始删除 1 个元素
// var myFish = ['angel', 'clown', 'drum', 'mandarin', 'sturgeon'];
// var remove = myFish.splice(3,1);
// console.log(remove);

// 从第 2 位开始删除 1 个元素，插入“trumpet”
// var myFish = ['angel', 'clown', 'drum', 'sturgeon'];
// var remove = myFish.splice(2,1,'trumpet');
// console.log(remove);
// console.log(myFish);

//删除所有元素
// var myFish = ['angel', 'clown', 'drum', 'sturgeon'];
// var remove = myFish.splice(0,4);
// console.log(remove);
// console.log(myFish);

